package models;

import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.OneToMany;

import play.db.jpa.Model;

@Entity
public class Regional extends Model {

	@OneToMany(orphanRemoval = true, cascade = CascadeType.ALL, mappedBy="regional")
	private Set<Equipe> equipes;
	@OneToMany(mappedBy="regional")
	private Set<AcessoEspecifico> acessos = new HashSet<AcessoEspecifico>();

	@Column(nullable = false)
	private String nome;

	public void addEquipe(Equipe equipe) {
		if (equipes == null) {
			equipes = new HashSet<Equipe>();
		}
		equipe.setRegional(this);
		equipes.add(equipe);
	}

	public Set<Equipe> getEquipes() {
		return equipes;
	}

	public void setEquipes(Set<Equipe> equipes) {
		this.equipes = equipes;
	}

	public Set<AcessoEspecifico> getAcessos() {
		return acessos;
	}

	public void setAcessos(Set<AcessoEspecifico> acessos) {
		this.acessos = acessos;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}
	
	public void addAcessoEspecifico(AcessoEspecifico ae) {
		if (ae != null) {
			this.acessos.add(ae);
			ae.setRegional(this);
		}
	}
}
